﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using FreeSql.DataAnnotations;
using XKPlatform.DataModels.Dao.BaseDao;

namespace XKPlatform.DataModels
{
    [Table(DisableSyncStructure = true, Name = "SysUser")]
    public partial class SysUser : BaseEntity
    {
        [Column(IsPrimary = true)]
        public Guid? UserID { get; set; }
        public string UserNo { get; set; }
        [StringLength(5, ErrorMessage = "长度不能少于5")]
        [Required( ErrorMessage ="用户名不能为空")]
        [Display(Name = "用户名")]
        public string UserName { get; set; }
        public string UserName_EN { get; set; }
        [Display(Name = "部门")]
        public Guid? DepartmentID { get; set; }
        [Display(Name = "角色")]
        public Guid? DefaultRoleID { get; set; }
        [Display(Name = "密码")]
        public string Password { get; set; }
        [Column(IsIgnore = true)]
        public string CheckPassword { get; set; }
        [Display(Name = "手机号")]
        public string Mobile { get; set; }
        [Display(Name = "邮箱")]
        public string Email { get; set; }
        public string QywxUserId { get; set; }
        public string Openid { get; set; }
        public long? OrderNo { get; set; }
        public DateTime? ChangePasswordTime { get; set; }
        public DateTime? LastLoginTime { get; set; }
        public string Remarks { get; set; }
        public bool? RecordStatus { get; set; }
        public string CreatedBy { get; set; }
        public DateTime? CreatedOn { get; set; }
        public string ModifiedBy { get; set; }
        public DateTime? ModifiedOn { get; set; }
        public string DepartmentNo { get; set; }
        public string PostNo { get; set; }
        public string CorpName { get; set; }
        public long? ImportBatch { get; set; }
        public int? Source { get; set; }
        public string Org { get; set; }
        public string ShortNo { get; set; }

        [Column(IsIgnore = true)]
        public bool IsAdmin { get; set; }
        [Column(IsIgnore = true)]
        public bool IsDev { get; set; }

        public string project { get; set; }

    }
}
